xen.git
19 years ago[XEN][POWERPC] Create a Domain Foreign Map space
Jimi Xenidis [Sun, 8 Oct 2006 15:34:24 +0000 (11:34 -0400)]
[XEN][POWERPC] Create a Domain Foreign Map space
The following patch creates a Domain Foreign Map space that is uses to
map granted memory into the Linear Map of the domain.  The Linear Map
of Linux is the is the Kernel Virtual address space where VA = PA +
PAGE_OFFSET.
Also:
 - lots of grant_* interfaces work now
 - mm.[ch] cleanups
 - first pass at extracting Page Table operations from PAPR interfaces
 - get_page_type() fix logic bug
 - recognize a grant table mapping by placing its gmfn at the end of
   real memory.
 - grant table usually mapped like an IO page, so force WIMG bits I=0
 - mfn_to_gmfn and pfn2mfn get WAY to complex, need get a simpler model in.
 - communicate the Domain Foreign Map to domains using /xen/foreign-map
 - make sure all bit definitions are UL where possible
 - now that we actually assign Xen heap pages to domains they must be
   relinquished
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
19 years ago[POWERPC][XEN] implement the UP side of __flush_tlb_mask()
Jimi Xenidis [Sat, 7 Oct 2006 20:25:46 +0000 (16:25 -0400)]
[POWERPC][XEN] implement the UP side of __flush_tlb_mask()
The SMP side will need to be done soone enough
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %E3%03v%A0%AB%C3%91%17%F6%04%B0%F6%CCx%17%DE%B3%EB%90y

19 years ago[POWERPC][XEN] Alloc IOMMU to map a Foreign page
Jimi Xenidis [Sat, 7 Oct 2006 19:38:27 +0000 (15:38 -0400)]
[POWERPC][XEN] Alloc IOMMU to map a Foreign page
VIO to a physical device reulsts in the granted page getting mapped
into the IOMMU.
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %AE%BE%E0%04%E5%17%FB9%1C%13Et%9Cq%A2%28a%EC%25M

19 years ago[XEN][POWERPC] Keepin it cool: sleep the processor when halt fails
Jimi Xenidis [Wed, 4 Oct 2006 18:06:14 +0000 (14:06 -0400)]
[XEN][POWERPC] Keepin it cool: sleep the processor when halt fails
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : p%1Ch%92%1F%F3%23p%CA%EA%AA%C1z%5E%0A%25%EB%C8%A8%3A

19 years ago[POWERPC][XEN] Fix yaboot loading and other linker script tweaks.
Hollis Blanchard [Fri, 6 Oct 2006 17:15:06 +0000 (12:15 -0500)]
[POWERPC][XEN] Fix yaboot loading and other linker script tweaks.
yaboot refuses to load segments at file offset 0, so move the ELF headers out
of our text segment. Also hardcode the link address in the linker script, and
remove the now-inaccurate start/end comments.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %A4%1B%8C%D0%1A%D2%87%D6%0A%5EY%CC%FF%A2%3B%5D%D8%83z%F8

19 years ago[POWERPC][XEN] Escape dots in .hgignore.
Hollis Blanchard [Thu, 5 Oct 2006 21:06:42 +0000 (16:06 -0500)]
[POWERPC][XEN] Escape dots in .hgignore.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %F9c%1D%8C%3E%3C8%CDa%80%03H%7E%5B%D2%1BJ%0A%CB%5D

19 years ago[POWERPC][XEN] Fix up 'clean' target.
Hollis Blanchard [Thu, 5 Oct 2006 21:06:05 +0000 (16:06 -0500)]
[POWERPC][XEN] Fix up 'clean' target.
Signed-off-by: Maria Butrico <butrico@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %07%E0B%1F%96%11%1C%1B%1C%18%8F5%10T%E5%A9%EE%13%9A%99

19 years ago[POWERPC][XEN] Builtin cmdline dependency rule
Hollis Blanchard [Thu, 5 Oct 2006 20:48:26 +0000 (15:48 -0500)]
[POWERPC][XEN] Builtin cmdline dependency rule
Rebuild cmdline.o when the user changes the CMDLINE=X argument passed to
the make invocation. I couldn't find an example of another project that
handles this case properly, so I came up with this.
Signed-off-by: Amos Waterland <apw@us.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %1D0%5E%9CslQ%E7E%CC%8FS%B8%E1%E5%C5i%ED%F1%BE

19 years ago[POWERPC][XEN] Hide builtin dom0 args from Xen.
Hollis Blanchard [Wed, 4 Oct 2006 22:27:16 +0000 (17:27 -0500)]
[POWERPC][XEN] Hide builtin dom0 args from Xen.
Signed-off-by: Amos Waterland <apw@us.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %1Bu%9B%25%22%CD%F0%93T%DC%A6%D8%FD%E2%7C%BDk%03%BA%B9

19 years ago[POWERPC][XEN] Create a cmdline.c to hold builtin/post-installed parameters.
Hollis Blanchard [Wed, 4 Oct 2006 22:22:59 +0000 (17:22 -0500)]
[POWERPC][XEN] Create a cmdline.c to hold builtin/post-installed parameters.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %80%27K%ED%86%CA%17I%FE%29%E2%21G%CB%C7%C4%95%22%271

19 years ago[POWERPC][XEN] Remove boot wrapper, and extensive Makefile simplifications.
Hollis Blanchard [Wed, 4 Oct 2006 22:17:41 +0000 (17:17 -0500)]
[POWERPC][XEN] Remove boot wrapper, and extensive Makefile simplifications.
Instead of embedding the 64-bit Xen image inside a 32-bit "boot wrapper", we
can just use objcopy. This combines boot32.S and start.S, and removes the boot/
subdirectory entirely.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
rename : xen/arch/powerpc/boot/start.S => xen/arch/powerpc/start.S
extra : transplant_source : %85P%AE%9D%12bgc5zR%A1%AA%0Fh%2A%2A%82%B2%90

19 years ago[POWERPC][XEN] Move gmfn_to_mfn() from page.h to mm.h to avoid recursive header depen...
Hollis Blanchard [Tue, 3 Oct 2006 23:23:21 +0000 (18:23 -0500)]
[POWERPC][XEN] Move gmfn_to_mfn() from page.h to mm.h to avoid recursive header dependencies.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
19 years ago[XEN][POWERPC] An OK spot to flush the I-Cache
Jimi Xenidis [Tue, 3 Oct 2006 01:43:09 +0000 (21:43 -0400)]
[XEN][POWERPC] An OK spot to flush the I-Cache
Its not the best, but it will do for now.
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %D1%F6%D0%F8%20%D8%90%AC%60u%F4z%D1%BAn8%01%21g%B4

19 years ago[XEN][POWERPC] Use gmfn_to_mfn() over pfn2mfn()
Jimi Xenidis [Tue, 3 Oct 2006 01:40:26 +0000 (21:40 -0400)]
[XEN][POWERPC] Use gmfn_to_mfn() over pfn2mfn()
Should only use pfn2mfn() if you care about the type of memory.
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
19 years ago[XEN][POWERPC] Fixes in cpu_flush_icache()
Jimi Xenidis [Mon, 2 Oct 2006 23:55:18 +0000 (19:55 -0400)]
[XEN][POWERPC] Fixes in cpu_flush_icache()
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %D1%13%8Bq%A5%097P%3An%C5%80%0D%7E%8FO%D8%B0b%E6

19 years ago[XEN][POWERPC] Add Function to completely flush the I-Cache for a processor
Jimi Xenidis [Mon, 2 Oct 2006 15:07:54 +0000 (11:07 -0400)]
[XEN][POWERPC] Add Function to completely flush the I-Cache for a processor
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %02%F6%E7u%DE%B1%F6%AA%21%15N%E47%125%1A8%96%81%AF

19 years ago[XEN][POWERPC] Flush all of text per CPU in case the loader did not
Jimi Xenidis [Mon, 2 Oct 2006 15:06:10 +0000 (11:06 -0400)]
[XEN][POWERPC] Flush all of text per CPU in case the loader did not
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %85%C4%82%F3%0A%0A%B7%E9%D8s%031%E7%7C%9E%20-%8E%A6%B1

19 years ago[XEN][POWERPC] go ultra conservative on CI IO routines
Jimi Xenidis [Mon, 2 Oct 2006 15:04:00 +0000 (11:04 -0400)]
[XEN][POWERPC] go ultra conservative on CI IO routines
The following patch contains:
 - Code that uses SLBIE for ERAT flush rather than TLBIE.  Erratum #16
   says to use SLBIE bit a TLBIE should do it and is "less
   distruptive".
 - Machine Check issues
   - Track CI mode while cache is still enabled
   - Use r7 to indicate that the IO is still pending while CI is on
 - The right sync for the right reasons
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %27m9%82%2A%21%DA%13%DD%DD%8B%C4%091a%05%D2%FA88

19 years ago[XEN][POWERPC] oops on debug build break
Jimi Xenidis [Mon, 2 Oct 2006 00:40:44 +0000 (20:40 -0400)]
[XEN][POWERPC] oops on debug build break
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : w74%97%91o%9E%24%93%9B%F4%D9T%9B%A7%C6%7C%02%C7%3F

19 years ago[XEN][POWERPC] Improve the debugging strategy of these hcalls.
Jimi Xenidis [Sun, 1 Oct 2006 12:38:38 +0000 (08:38 -0400)]
[XEN][POWERPC] Improve the debugging strategy of these hcalls.
This patch cleans up all the variaus printk()s.
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
19 years ago[XEN][POWERPC] Allocate Xen memory area based on the amount of memory
Jimi Xenidis [Fri, 29 Sep 2006 18:31:05 +0000 (14:31 -0400)]
[XEN][POWERPC] Allocate Xen memory area based on the amount of memory
This will make sure that there is enough memory for large HTABs, as well as:
 - enables "xenheap_megabytes=" cmdline option
 - consistently reports on memory system
 - reduces noise in memory.c
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %C7%FA%7CA%B9%E6%0C%DD%DD%F9%0F%ED%DE%A8%C1_%01_Ck

19 years ago[XEN][POWERPC] shadowed paramter in prototype, SHEESH!
Jimi Xenidis [Fri, 29 Sep 2006 15:29:32 +0000 (11:29 -0400)]
[XEN][POWERPC] shadowed paramter in prototype, SHEESH!
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %DB%FB_%C0%B9%B2%CC%C2%F4%81q%0D%A8%CFA%9D%91%AE%40%D6

19 years ago[XEN][POWERPC] Conistence with log vs. order
Jimi Xenidis [Fri, 29 Sep 2006 13:53:39 +0000 (09:53 -0400)]
[XEN][POWERPC] Conistence with log vs. order
We use "log" for a log2 value, "order" is the log2 of page size, so:
  order = log - PAGE_SHIFT
It is confusing, but more so if we are not consistent.
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %3B%F1hO%03.%BF%5C%CA%BD%A8%F0%A7%CC%10upa%B0%BF

19 years ago[XEN][POWERPC] Remove limit on the page frame table
Jimi Xenidis [Fri, 29 Sep 2006 02:31:23 +0000 (22:31 -0400)]
[XEN][POWERPC] Remove limit on the page frame table
Dunno where the limit came from, but it is the reason we were
asserting in the page allocator.
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : .%21%9F%06%F9%A4%07%D12H%EAz8%93s%A20%28%C4%26

19 years ago[XEN][POWERPC] Allow Xen to use RTAS if available
Jimi Xenidis [Thu, 28 Sep 2006 16:34:01 +0000 (12:34 -0400)]
[XEN][POWERPC] Allow Xen to use RTAS if available
If FW provides an RTAS layer, it will be instantiated and Xen will try
to use it for power control (halt, reboot, power-off, etc).  Xen will
also communicate to Dom0 (using /xen/power-control in the devtree)
when Xen cannot control power and it is hoped that the domain can,
especially useful for Maple boards running non-RTAS versions of PIBS.
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
19 years ago[XEN][POWERPC] U4 DART workaround for functionality
Jimi Xenidis [Tue, 26 Sep 2006 18:01:11 +0000 (14:01 -0400)]
[XEN][POWERPC] U4 DART workaround for functionality
This patch invalidates the whole DART cache rather than the single
entry.  Until we get single entry invalidating we'll have an obvious
performance issue.
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %2A%A9%A6T%08%BC%10YL%D2H%8Ff%40WO%5E%A6uI

19 years ago[XEN][POWERPC] Allocated wrong order for dummy page
Jimi Xenidis [Tue, 26 Sep 2006 16:44:20 +0000 (12:44 -0400)]
[XEN][POWERPC] Allocated wrong order for dummy page
This patch makes sure that the dummy page is only 4k not 8k.
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : .0%3E%AC%CE2%E5%FD%3F%7B%16%C9/%F04%B7%11%7E%1D_

19 years ago[XEN][POWERPC] Backoff the SCOM stuff by default
Jimi Xenidis [Tue, 26 Sep 2006 16:42:33 +0000 (12:42 -0400)]
[XEN][POWERPC] Backoff the SCOM stuff by default
Sadly the SCOM stuff is proving to be unstable for various versions of
the chip.  I'm turning it off by default.  Also adding some PVR
decoding logic.
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %AF%13%80%A0%88%04%AE%D1Z%04%F3%DD%60%C5%E5%60%11%E6%8D%06

19 years ago[XEN][POWERPC] Fix compile error in gdbstub.c
Jimi Xenidis [Mon, 25 Sep 2006 15:19:55 +0000 (11:19 -0400)]
[XEN][POWERPC] Fix compile error in gdbstub.c
With crash_debug=y the compiler can't find a prototype for unimplemented(),
where gdb-arch-read_reg is calling it.
Signed-off-by: Amos Waterland <apw@us.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %AC%FB%1A%C2%3F%80%28l%8BS%20R%F5%E4%B7%7F3a%266

19 years ago[XEN][POWERPC] Be a little smarter with unimplemented()
Jimi Xenidis [Fri, 22 Sep 2006 15:51:56 +0000 (11:51 -0400)]
[XEN][POWERPC] Be a little smarter with unimplemented()
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %0E%83%BAb%A3%A5%C3%B2%2A%E9%9E%BBkk%7F%E6%04%DD%B4G

19 years ago[XEN][POWERPC] Clean up debug/traceback/trapping logic
Hollis Blanchard [Thu, 30 Nov 2006 21:26:55 +0000 (15:26 -0600)]
[XEN][POWERPC] Clean up debug/traceback/trapping logic
This patch tries to sort out all the debugging mechanisms we have
available to us.
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
19 years ago[XEN][POWERPC] Machine check now inspects the SCOM for more information
Jimi Xenidis [Fri, 22 Sep 2006 15:02:47 +0000 (11:02 -0400)]
[XEN][POWERPC] Machine check now inspects the SCOM for more information
Also fixes suggested by <segher@kernel.crashing.org>
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %E0%BBbh8%05%BC%0D%CDl%A5%19%8B%14%0FY%10%DB%D3X

19 years ago[POWERPC][XEN] attempt to adjust thread priority is futile and meaningless
Jimi Xenidis [Thu, 21 Sep 2006 17:48:24 +0000 (13:48 -0400)]
[POWERPC][XEN] attempt to adjust thread priority is futile and meaningless
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %F4%8C%D4%9FN%E2%1F%C4N%F2%FD%85U%3C%8C%20%08%DA%84%89

19 years ago[XEN][POWERPC] Fully inline udelay()
Jimi Xenidis [Thu, 21 Sep 2006 11:37:00 +0000 (07:37 -0400)]
[XEN][POWERPC] Fully inline udelay()

Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %BC%B5%99%8A%0A%BCP%A3l%B8%00%B8C%CE49R%CC%CBf

19 years ago[XEN][POWERPC] SCOM access is fully known and working
Jimi Xenidis [Thu, 21 Sep 2006 11:36:17 +0000 (07:36 -0400)]
[XEN][POWERPC] SCOM access is fully known and working

Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %E2%2C%BD.%A1%E4r%0BxS%E4%B0ZJ%9C%DD%A2%BF%F3H

19 years ago[POWERPC][XEN] /chosen/cpu is an instance not a package
Jimi Xenidis [Mon, 18 Sep 2006 21:47:10 +0000 (17:47 -0400)]
[POWERPC][XEN] /chosen/cpu is an instance not a package

Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %83%94%E6gH%D0%3B%DE%237%DF%3A%D2%BA%8B%E5%9C%F3%92%B5

19 years agoMerge with xen-unstable.hg.
Hollis Blanchard [Wed, 29 Nov 2006 20:16:36 +0000 (14:16 -0600)]
Merge with xen-unstable.hg.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
19 years ago[XEN] Add emulator tracing diagnostic on error path.
kfraser@localhost.localdomain [Tue, 28 Nov 2006 14:27:13 +0000 (14:27 +0000)]
[XEN] Add emulator tracing diagnostic on error path.
Simplify shadow-mode entry protocol to emulator.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years agoBump xend_config_format to 3, to indicate that the lifecycle patches are
Ewan Mellor [Tue, 28 Nov 2006 14:24:20 +0000 (14:24 +0000)]
Bump xend_config_format to 3, to indicate that the lifecycle patches are
available.

Better version mechanisms will be forthcoming!

Signed-off-by: Ewan Mellor <ewan@xensource.com>
19 years ago[HVMLOADER] acpi: Implement an acpi_rsdp_get() function that searches
kfraser@localhost.localdomain [Tue, 28 Nov 2006 13:53:12 +0000 (13:53 +0000)]
[HVMLOADER] acpi: Implement an acpi_rsdp_get() function that searches
for the RSDP in memory (up to the BIOS) rather than calculating its
start address. Recent changes seem to have moved the RSDP to another
location in memory so that I received 'BAD RSPD signature' messages.
I have also fixed some other possible issues related to return codes
and alignment of ACPI entries.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
19 years ago[BLKTAP] Use lartge enough types to express parameters of large block devices.
kfraser@localhost.localdomain [Tue, 28 Nov 2006 13:50:32 +0000 (13:50 +0000)]
[BLKTAP] Use lartge enough types to express parameters of large block devices.

While the kernel side of blktap drivers is using 64-bit sector numbers
correctly when reporting disk sizing, the userspace parts where this
dat is actually generated is truncating at 32-bit. There are 3 variables
related to disk sizing which are used in the kernel/userspace code
'size', 'sector size' & 'info'. In kernel space these are treated as being
unsigned long long, unsigned long, and unsigned int, respectively. In
the blktap userspace code this were all varyingly long, unsigned long.
This mismatch caused 32-bit wraparound on large disks. The attached
patch updates the blktap userspace to use the same data types as
kernel space for all these params, thus both fixing the 32-bit bug &
giving the code consistency.

This patch has been tested both by comparing /proc/partitions in the
guest, with the image size seen in the host, and by using Stephen
Tweedie's 'verify-data' tool on a variety of multi-TB sized disks.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
19 years ago[HVM][SVM] Allows 64bit HVM AMD-V Linux guests to boot.
kfraser@localhost.localdomain [Tue, 28 Nov 2006 13:48:47 +0000 (13:48 +0000)]
[HVM][SVM] Allows 64bit HVM AMD-V Linux guests to boot.
Basically, this patch reverts part of c/s 12264.
Signed-off-by: Tom Woller <thomas.woller@amd.com>
19 years ago[QEMU] pci: Unaligned config read/write overflow
kfraser@localhost.localdomain [Tue, 28 Nov 2006 13:46:10 +0000 (13:46 +0000)]
[QEMU] pci: Unaligned config read/write overflow

The default config read/write handlers allows a 4-byte read/write at
address 255.  This can clobber the field after the config area.  This
happens to be the PCIBus pointer in the PCIDevice structure.

This patch stops this from reducing the read/write to the (largest
multiple of 2) number of bytes within the config area.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
19 years ago[XENOPROFILE] fix shared_xenoprof_page_with_guest() and cleanup.
kfraser@localhost.localdomain [Tue, 28 Nov 2006 13:43:25 +0000 (13:43 +0000)]
[XENOPROFILE] fix shared_xenoprof_page_with_guest() and cleanup.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
19 years agoAdded xm list --state option, to select VMs with a particular state. Make
Ewan Mellor [Tue, 28 Nov 2006 13:34:15 +0000 (13:34 +0000)]
Added xm list --state option, to select VMs with a particular state.  Make
this handled by a new message (xend.domains_with_state) and make xend.domains
equivalent to xend.domains_with_state(running).  This restores the Xen 3.0.3
semantics of xend.domains.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
19 years agoDo not display -1 as the domid when a VM is not running -- simply leave the
Ewan Mellor [Tue, 28 Nov 2006 13:32:07 +0000 (13:32 +0000)]
Do not display -1 as the domid when a VM is not running -- simply leave the
column blank.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
19 years ago[XEN] Clear just the _PAGE_RW bit when shooting writeable mappings
Tim Deegan [Tue, 28 Nov 2006 12:24:24 +0000 (12:24 +0000)]
[XEN] Clear just the _PAGE_RW bit when shooting writeable mappings
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
19 years agomerge
kfraser@localhost.localdomain [Tue, 28 Nov 2006 11:47:28 +0000 (11:47 +0000)]
merge

19 years ago[HVM] Add/fix access rights and limit checks to INS/OUTS emulation
kfraser@localhost.localdomain [Tue, 28 Nov 2006 11:46:39 +0000 (11:46 +0000)]
[HVM] Add/fix access rights and limit checks to INS/OUTS emulation

Since these instructions are documented to take their intercepts
before these checks are being done in hardware, they must be carried
out in software.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
19 years ago[HVM] Non-flat protected mode HVM support.
kfraser@localhost.localdomain [Tue, 28 Nov 2006 11:45:54 +0000 (11:45 +0000)]
[HVM] Non-flat protected mode HVM support.

This is now the full set of changes needed to eliminate the assumption
that segments in protected mode always have zero base addresses. At
once, this further simplifies the instruction length determination
code used for MMIO of HVM domains.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
19 years agoFix missing import.
Ewan Mellor [Tue, 28 Nov 2006 11:43:43 +0000 (11:43 +0000)]
Fix missing import.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
19 years ago[HVM] Fix MSR access code.
kfraser@localhost.localdomain [Tue, 28 Nov 2006 11:43:39 +0000 (11:43 +0000)]
[HVM] Fix MSR access code.

- rdmsr/wrmsr always use ECX (not RCX) as register index.
- SVM still had the function names explicitly in the HVM_DBG_LOG() output
- the guest should (at the very minimum) see GP fault for MSRs
  accesses to which even fault in Xen itself

Signed-off-by: Jan Beulich <jbeulich@novell.com>
19 years agoDon't bail if the VM renaming at the end of saving doesn't succeed -- we
Ewan Mellor [Tue, 28 Nov 2006 11:35:10 +0000 (11:35 +0000)]
Don't bail if the VM renaming at the end of saving doesn't succeed -- we
expect a failure if this is a localhost migration.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
19 years agoAdded configuration for authentication through Xen-API -- it can now be set
Ewan Mellor [Tue, 28 Nov 2006 11:31:46 +0000 (11:31 +0000)]
Added configuration for authentication through Xen-API -- it can now be set
to use PAM, or to be turned off entirely, on a listener by listener basis.

Listen on a different unix domain socket for the Xen-API server, so that it
can co-exist with the others.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
19 years agoFix log message.
Ewan Mellor [Tue, 28 Nov 2006 10:24:52 +0000 (10:24 +0000)]
Fix log message.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
19 years agoImplement an "allowed hosts" mechanism for the XML-RPC server layer, using
Ewan Mellor [Tue, 28 Nov 2006 10:23:34 +0000 (10:23 +0000)]
Implement an "allowed hosts" mechanism for the XML-RPC server layer, using
code from the relocation protocol handling and some plumbing.  Add a new
configuration entry for the Xen-API server, including use of this mechanism.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
19 years ago[XEN] Remove valid_mfn().
Tim Deegan [Tue, 28 Nov 2006 09:51:05 +0000 (09:51 +0000)]
[XEN] Remove valid_mfn().
Since cset 12568 removed VALID_MFN(), valid_mfn() is just confusing.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
19 years ago[XEN] Don't unpin old shadow top levels until the new ones are pinned.
Tim Deegan [Tue, 28 Nov 2006 09:39:32 +0000 (09:39 +0000)]
[XEN] Don't unpin old shadow top levels until the new ones are pinned.
This will stop a possible case where we unshadow an entire process
on a TLB-flush CR3 write.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
19 years agoCope with non-integer domids (i.e. None) in the error message surrounding
Ewan Mellor [Mon, 27 Nov 2006 20:04:20 +0000 (20:04 +0000)]
Cope with non-integer domids (i.e. None) in the error message surrounding
save/restore.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
19 years ago[HVM] Re-introduce the 'apic' configuration option, default to 1.
kfraser@localhost.localdomain [Mon, 27 Nov 2006 17:49:41 +0000 (17:49 +0000)]
[HVM] Re-introduce the 'apic' configuration option, default to 1.

Also simplify the HVM builder interface by doing more work in
the python wrapper, and fix mapping of shared_info page after the
change to map foreign pages by GMFN rather than MFN.

Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XEN] Remove VALID_MFN(); replace uses with mfn_valid().
kfraser@localhost.localdomain [Mon, 27 Nov 2006 17:48:24 +0000 (17:48 +0000)]
[XEN] Remove VALID_MFN(); replace uses with mfn_valid().
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years agoWhen suspending and resuming, look up the managed path using the domain's UUID.
Ewan Mellor [Mon, 27 Nov 2006 14:52:41 +0000 (14:52 +0000)]
When suspending and resuming, look up the managed path using the domain's UUID.

Add a resumed domain to the self.domains list after XendCheckpoint.restore,
to ensure that it does not get recreated immediately afterwards.

Perform domain_resume under the domains_lock, given that the domain needs to
be added.

These fixes together should fix xm suspend and xm resume.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
19 years agoDon't send the old state string for halted domains -- it doesn't make any
Ewan Mellor [Mon, 27 Nov 2006 14:48:38 +0000 (14:48 +0000)]
Don't send the old state string for halted domains -- it doesn't make any
sense, and we don't want to see state flags linger.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
19 years agoReset the domain name after the save completes. This is necessary, now that
Ewan Mellor [Mon, 27 Nov 2006 14:47:23 +0000 (14:47 +0000)]
Reset the domain name after the save completes.  This is necessary, now that
we have persistent domains.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
19 years agoAdd xm resume to the commands list.
Ewan Mellor [Mon, 27 Nov 2006 14:45:44 +0000 (14:45 +0000)]
Add xm resume to the commands list.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
19 years ago[XEN] Cleanups to phys/mach address handling.
kfraser@localhost.localdomain [Mon, 27 Nov 2006 14:20:44 +0000 (14:20 +0000)]
[XEN] Cleanups to phys/mach address handling.

 1. Balloon driver does not need to set M2P entry.
    This is done by the populate_physmap hypercall.

 2. Xen now translates foreign mappings from GMFN->MFN.
    Tools are simplified because of this.

Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[LINUX] Import kasprintf patch from upstream.
Ian Campbell [Mon, 27 Nov 2006 13:50:02 +0000 (13:50 +0000)]
[LINUX] Import kasprintf patch from upstream.

kasprintf has been merged upstream with a slightly different protoype
to the one in Xen. Import this patch and fixup the Xen tree to fit.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
19 years ago[LINUX] Update to Linux 2.6.16.32
Ian Campbell [Mon, 27 Nov 2006 13:50:02 +0000 (13:50 +0000)]
[LINUX] Update to Linux 2.6.16.32

Updated patches/linux-2.6.16.32/net-gso-0-base.patch due to changes in
net/core/dev.c and net/core/skbuff.c and update the following in the sparse
tree:
include/linux/skbuff.h
mm/memory.c
mm/mmap.c

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
19 years ago[LINUX] Update to Linux 2.6.16.31
Ian Campbell [Mon, 27 Nov 2006 13:50:02 +0000 (13:50 +0000)]
[LINUX] Update to Linux 2.6.16.31

Updated linux-2.6-xen-sparse/arch/x86_64/kernel/acpi/Makefile

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
19 years ago[LINUX] Update to 2.6.16.30.
Ian Campbell [Mon, 27 Nov 2006 13:50:01 +0000 (13:50 +0000)]
[LINUX] Update to 2.6.16.30.

No changes required to sparse tree or patches directory.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
19 years ago[NET] back: Fix DPRINTK message.
kfraser@localhost.localdomain [Mon, 27 Nov 2006 13:22:21 +0000 (13:22 +0000)]
[NET] back: Fix DPRINTK message.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years agoFix typo.
Ewan Mellor [Mon, 27 Nov 2006 12:53:40 +0000 (12:53 +0000)]
Fix typo.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
19 years agoDo not bother waiting for the old HttpServer and UnixHttpServer threads when
Ewan Mellor [Mon, 27 Nov 2006 12:50:30 +0000 (12:50 +0000)]
Do not bother waiting for the old HttpServer and UnixHttpServer threads when
shutting down -- they don't have exit handling themselves and ought to just
be made daemon threads.

Added some logging to dialog shutdown problems.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
19 years ago[HVM] Move IOAPIC ID back to 0x00. Shift LAPIC IDs to 0x01 upwards.
kfraser@localhost.localdomain [Mon, 27 Nov 2006 12:00:01 +0000 (12:00 +0000)]
[HVM] Move IOAPIC ID back to 0x00. Shift LAPIC IDs to 0x01 upwards.

Actually the conflict between LAPIC ID 0x00 and IOAPIC ID 0x00
really doesn't matter even in a native system but we can avoid
any risk of a warning by shifting the LAPIC ID space by one.

Also the changeset fixes construction of the MADT (LAPIC info
was overwriting the IOAPIC info) so we can now boot with ACPI
MADT again.

Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[HVM] Fix 8259 ELCR masks.
kfraser@localhost.localdomain [Mon, 27 Nov 2006 11:39:54 +0000 (11:39 +0000)]
[HVM] Fix 8259 ELCR masks.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XENOPROFILE] removed unused gmaddr argument.
kfraser@localhost.localdomain [Mon, 27 Nov 2006 10:24:41 +0000 (10:24 +0000)]
[XENOPROFILE] removed unused gmaddr argument.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
19 years ago[MINIOS] Switched to new interface for HYPERVISOR_sched_op().
kfraser@localhost.localdomain [Mon, 27 Nov 2006 10:23:19 +0000 (10:23 +0000)]
[MINIOS] Switched to new interface for HYPERVISOR_sched_op().
Signed-off-by: Dietmar Hahn <dietmar.hahn@fujitsu-siemens.com>
19 years ago[HVM] Fix bugs in RTC alarm code.
kfraser@localhost.localdomain [Mon, 27 Nov 2006 10:14:45 +0000 (10:14 +0000)]
[HVM] Fix bugs in RTC alarm code.
 - comparing bcd with binary data
 - comparing min with mon

Signed-off-by: Xiaowei Yang <xiaowei.yang@intel.com>
19 years ago[QEMU] fdc: Limit sector size to 16K
kfraser@localhost.localdomain [Mon, 27 Nov 2006 10:09:19 +0000 (10:09 +0000)]
[QEMU] fdc: Limit sector size to 16K

In fdctrl_start_transfer the sector size field (fifo[5]) is not
checked for overflows.  This allows an arbitrarily large sector size
to be used, which can in turn result in a negative data_len field that
is then used for DMA transfers.

This can lead to the corrpuption of qemu state because some subsequent
checks on the transfer length is conducted using signed integers.

This patch limits the value fifo[5] to 7 which is the standard limit
on floppy sector size.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
19 years ago[VMXASSIST] Fix the wrong order definition of ES/DS in regs structure.
kfraser@localhost.localdomain [Mon, 27 Nov 2006 10:08:12 +0000 (10:08 +0000)]
[VMXASSIST] Fix the wrong order definition of ES/DS in regs structure.
Signed-off-by: Xin Li <xin.b.li@intel.com>
19 years ago[PATCH] svm: fix RIP-relative addressing in invlpg emulation
kfraser@localhost.localdomain [Mon, 27 Nov 2006 10:06:41 +0000 (10:06 +0000)]
[PATCH] svm: fix RIP-relative addressing in invlpg emulation

RIP-relative addressing as relative to the beginning of the next (or,
in other word, the end of the current) instruction.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
19 years ago[HVM] Small fixes to mmio decoder/emulator.
kfraser@localhost.localdomain [Mon, 27 Nov 2006 10:05:23 +0000 (10:05 +0000)]
[HVM] Small fixes to mmio decoder/emulator.

Remove a superfluous special case in xchg and fix word-size source
operand movzx.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
19 years ago[MINIOS] Exports a function to have all Xen ports unbound.
kfraser@localhost.localdomain [Mon, 27 Nov 2006 10:03:35 +0000 (10:03 +0000)]
[MINIOS] Exports a function to have all Xen ports unbound.

This is necessary when using mini-os as the foundation for a boot-loader.

Signed-off-by: Jacob Gorm Hansen <jacobg@diku.dk>
19 years ago[HVM] Fix building PV-on-HVM drivers on i386.
kfraser@localhost.localdomain [Mon, 27 Nov 2006 10:02:24 +0000 (10:02 +0000)]
[HVM] Fix building PV-on-HVM drivers on i386.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years agoUpdate hgignore list
kaf24@localhost.localdomain [Sun, 26 Nov 2006 17:39:09 +0000 (17:39 +0000)]
Update hgignore list

19 years ago[HVM] Dynamically build ACPI-table data block.
kaf24@localhost.localdomain [Sun, 26 Nov 2006 17:37:28 +0000 (17:37 +0000)]
[HVM] Dynamically build ACPI-table data block.
Only emit MP tables and MADT for multi-processor guests.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XEN] Fix emulator EA calculation for LODS/STOS.
kaf24@localhost.localdomain [Sun, 26 Nov 2006 17:35:00 +0000 (17:35 +0000)]
[XEN] Fix emulator EA calculation for LODS/STOS.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XEN] Clean up EA computation in emulator.
kaf24@localhost.localdomain [Sun, 26 Nov 2006 13:52:48 +0000 (13:52 +0000)]
[XEN] Clean up EA computation in emulator.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[HVM] Update VPIC device model for new interrupt delivery code.
kaf24@localhost.localdomain [Sun, 26 Nov 2006 13:37:27 +0000 (13:37 +0000)]
[HVM] Update VPIC device model for new interrupt delivery code.
Move BSP VLAPIC initialisation to hvmloader.
Remove callback_irq update hack from Linux unmodified drivers.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[HVM] VPIC (i8259) device model cleanups.
kfraser@localhost.localdomain [Fri, 24 Nov 2006 15:42:14 +0000 (15:42 +0000)]
[HVM] VPIC (i8259) device model cleanups.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[HVM] Unaligned write to a PTE is a good indication the
kfraser@localhost.localdomain [Fri, 24 Nov 2006 14:37:45 +0000 (14:37 +0000)]
[HVM] Unaligned write to a PTE is a good indication the
page is no longer a page table.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years agoFix vncdisplay handling.
Ewan Mellor [Fri, 24 Nov 2006 14:05:59 +0000 (14:05 +0000)]
Fix vncdisplay handling.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
19 years ago[HVM] Fix hvm_copy_[to|from]_guest_virt
Tim Deegan [Fri, 24 Nov 2006 09:42:40 +0000 (09:42 +0000)]
[HVM] Fix hvm_copy_[to|from]_guest_virt
which would fail if it crossed a page boundary where the guest physical
pages were not contiguous.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
19 years ago[VMX] Make sure that the WP bit is always set in CR0 when running SVM guests.
Tim Deegan [Thu, 23 Nov 2006 18:01:40 +0000 (18:01 +0000)]
[VMX] Make sure that the WP bit is always set in CR0 when running SVM guests.
This is the VMX equivalent of cset 12525:4ddda0bbb57c.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
19 years agoMerge
Tim Deegan [Thu, 23 Nov 2006 17:54:06 +0000 (17:54 +0000)]
Merge

19 years ago[XEN] Pin l3 shadows of older x86_64 linux guests.
Tim Deegan [Thu, 23 Nov 2006 17:46:52 +0000 (17:46 +0000)]
[XEN] Pin l3 shadows of older x86_64 linux guests.
Older x86_64 linux kernels use one l4 table per cpu and context switch by
changing an l4 entry pointing to an l3 table.  If we're shadowing them
we need to pin l3 shadows to stop them being torn down on every
context switch.  (But don't do this for normal 64bit guests).
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
19 years ago[XEN] Don't call domain_crash_synchronous() with shadow lock held.
Tim Deegan [Thu, 23 Nov 2006 17:44:12 +0000 (17:44 +0000)]
[XEN] Don't call domain_crash_synchronous() with shadow lock held.
Call domain_crash() and propagate an error to the caller instead.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
19 years ago[XEN] Simplify the shadow hash table.
Tim Deegan [Thu, 23 Nov 2006 17:42:29 +0000 (17:42 +0000)]
[XEN] Simplify the shadow hash table.
Chain hash buckets through the shadow page_info structs instead
of in separately allocated structures.  This lets us get rid of
some xenheap allocations and a domain_crash_synchronous() call.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
19 years ago[XEN] Use a separate struct shadow_page_info for shadow pages
Tim Deegan [Thu, 23 Nov 2006 17:40:28 +0000 (17:40 +0000)]
[XEN] Use a separate struct shadow_page_info for shadow pages
and move the definitions of shadow types etc out of public headers.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
19 years ago[XEN] Small ioemul cleanup.
kfraser@localhost.localdomain [Thu, 23 Nov 2006 17:37:23 +0000 (17:37 +0000)]
[XEN] Small ioemul cleanup.
Signed-off-by: Keir Fraser <keir@xensource.com>